package com.phiture.erp.basic.dal.entity;

import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

import java.math.BigDecimal;

/**
 * 物料库存属性 DO
 *
 * @author 芋道源码
 */
@TableName("erp_material_inventory")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ErpMaterialInventoryDO extends BaseDO {

    /**
     * 编号
     */
    @TableId
    private Long id;
    /**
     * 物料状态(0:未核准 1:核准 2:禁用 3:已删除)
     */
    private Boolean status;
    /**
     * 禁用组织
     */
    private String freezeOrgUnit;
    /**
     * 物料ID
     */
    private Long materialId;
    /**
     * 安全库存
     */
    private BigDecimal qtySafety;
    /**
     * 允许负库存
     */
    private Integer isNegative;
    /**
     * 使用批号管理
     */
    private Integer isBatchNo;
    /**
     * 使用序列号管理
     */
    private Integer isSequenceNo;
    /**
     * 批次管理
     */
    private Integer isLotNumber;
    /**
     * 条码管理
     */
    private Integer isBarcode;
    /**
     * 出库优先方式(1:按批次号顺序 2:按批次先进先出 3:按批次后进先出 4:近效期)
     */
    private Integer issuePriorityMode;
    /**
     * 计量单位
     */
    private Long unitId;
    /**
     * 保质期管理
     */
    private Integer isPeriodValid;
    /**
     * 保质期
     */
    private Integer periodValid;
    /**
     * 保质期单位(1:年 2:月 3:日)
     */
    private Integer periodValidUnit;
    /**
     * 采购提前期(天)
     */
    private Integer purchasingAheadDate;
    /**
     * 默认仓库
     */
    private Long defaultWarehouseId;
    /**
     * 是否检验
     */
    private Integer isCheck;
    /**
     * 质检组织
     */
    private Long qualityOrgId;

}